<ui:composition template="../template/template.xhtml" xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html" xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:f="http://java.sun.com/jsf/core" xmlns:p="http://primefaces.org/ui">
	<ui:define name="localizacao">
		<h:outputText value="&#160; Lembretes" />
	</ui:define>
	<ui:define name="content">
		<h4>
			<b><h:outputText value="Lembretes: " /></b>
		</h4>
		<br />

		<h:form id="formAddReferencia">
			<p:commandButton id="lembrete" icon="ui-icon-plusthick" value="Adicionar Novo"
				styleClass="ui-priority-primary" oncomplete="dlg2.show()" process="@this" update=":modalDialog">
			</p:commandButton>
		</h:form>
		<br />
		<p:growl id="msgPaginaLembretes" showDetail="true" sticky="false" life="4000" />
		<h:form>
			<p:panel>
				<table>
					<tr>
						<td><h:outputText value="Filtrar pelo concurso: " /></td>
					</tr>
					<tr>
						<td><p:selectOneMenu id="concurso" value="#{lembreteMB.id}">
								<f:selectItem itemLabel="Selecione" itemValue="0" />
								<f:selectItem itemLabel="Todos" itemValue="1" />
								<f:selectItems value="#{lembreteMB.listaConcurso}" var="concurso"
									itemLabel="#{concurso.nome}" itemValue="#{concurso.id}" />
								<p:ajax listener="#{lembreteMB.buscarLembretePorConcurso()}" />
							</p:selectOneMenu></td>
					</tr>
				</table>
			</p:panel>
		</h:form>

		<p:dialog id="modalDialog" header="Adicionar Lembrete" widgetVar="dlg2" modal="true" height="270">
			<br />
			<h:form id="form-modal">
				<table>
					<tr>
						<td><h:outputText value="Concurso:" /></td>
						<td><p:selectOneMenu id="concurso" value="#{lembreteMB.id}">
								<f:selectItems value="#{lembreteMB.listaConcurso}" var="concurso"
									itemLabel="#{concurso.nome}" itemValue="#{concurso.id}" />
							</p:selectOneMenu></td>
					</tr>
					<tr>
						<td><h:outputText value="Título: " /></td>
						<td><p:inputText id="titulo" value="#{lembreteMB.lembrete.titulo}" required="true"
								requiredMessage="Campo obrigatorio" /></td>
						<td><p:message for="titulo" /></td>
					</tr>
					<tr>
						<td><h:outputText value="Informação: " /></td>
						<td><p:inputText id="informacao" value="#{lembreteMB.lembrete.informacao}"
								required="true" requiredMessage="Campo obrigatorio" /></td>
						<td><p:message for="informacao" /></td>
					</tr>
					<tr>
						<td><h:outputText value="Data do lembrete: " /></td>
						<td><p:calendar id="data_lembrete" locale="pt" showButtonPanel="true" navigator="true"
								pattern="dd/MM/yyyy" yearRange="c-50:c-0" value="#{lembreteMB.lembrete.dataLembrar}" /></td>
						<td><p:message for="data_lembrete" /></td>
					</tr>
					<tr>
						<td><h:outputText value="Enviar E-mail: " /></td>
						<td><p:selectBooleanCheckbox value="#{lembreteMB.lembrete.enviarEmail}" /></td>
					</tr>
					<tr>
						<td><br /></td>
					</tr>
					<tr>
						<td><p:commandButton listener="#{form-modal}" value="Cadastrar"
								oncomplete="if (!args.validationFailed) $('#form-modal\\:link_cadLembrete').click()"
								update="form-modal" process="@form" styleClass="ui-priority-primary" /> <p:commandLink
								style="display:none" id="link_cadLembrete"
								actionListener="#{lembreteMB.cadastrarLembrete()}" update="form-modal,:lista_lembretes:msg1"
								oncomplete="dlg2.hide()" /></td>
					</tr>
				</table>
			</h:form>
		</p:dialog>

		<h:form id="lista_lembretes">
			<p:growl id="msg1" showDetail="true" sticky="false" life="5000" />
			<p:dataTable value="#{lembreteMB.listaLembretes}" var="lembrete" id="lista_lembretes"
				emptyMessage="Nenhum lembrete cadastrado" paginator="true" rows="10" editable="true"
				paginatorTemplate="{PageLinks} {RowsPerPageDropdown}" rowsPerPageTemplate="5,10,15"
				draggableColumns="true" paginatorAlwaysVisible="false" paginatorPosition="bottom">

				<p:ajax event="rowEdit" listener="#{lembreteMB.onEdit}" />

				<f:facet name="header">  
            		Lembretes Cadastrados  
        		</f:facet>

				<p:column headerText="Titulo Lembrete" sortBy="#{lembrete.titulo}">
					<p:cellEditor>
						<f:facet name="output">
							<h:outputText value="#{lembrete.titulo}" />
						</f:facet>
						<f:facet name="input">
							<p:inputText value="#{lembrete.titulo}" style="width:100%;" />
						</f:facet>
					</p:cellEditor>
				</p:column>
				<p:column headerText="Informacao">
					<p:cellEditor>
						<f:facet name="output">
							<h:outputText value="#{lembrete.informacao}" />
						</f:facet>
						<f:facet name="input">
							<p:inputText value="#{lembrete.informacao}" />
						</f:facet>
					</p:cellEditor>
				</p:column>
				<p:column headerText="Data" sortBy="#{lembrete.dataLembrar}">
					<h:outputText value="#{lembrete.dataLembrar}">
						<f:convertDateTime type="date" dateStyle="medium" />
					</h:outputText>
				</p:column>
				<p:column style="width:3%">
					<f:facet name="header">Editar</f:facet>
					<p:rowEditor />
				</p:column>
				<p:column>
					<f:facet name="header">Acoes</f:facet>
					<p:commandButton id="delete" icon="ui-icon-trash" title="Excluir"
						oncomplete="confirmation.show()" actionListener="#{lembreteMB.selecionarLembrete(lembrete)}" />
				</p:column>
			</p:dataTable>
		</h:form>

		<h:form id="formRemover">
			<p:confirmDialog id="confirmDialog"
				message="Excluir o lembrete: #{lembreteMB.lembreteSelecionado}" header="Certeza?"
				severity="alert" widgetVar="confirmation">

				<p:commandButton id="confirm" value="Sim" oncomplete="confirmation.hide()"
					action="#{lembreteMB.excluirLembrete()}" update=":lista_lembretes,:msgPaginaLembretes" />
				<p:commandButton id="decline" value="Nao" onclick="confirmation.hide()" type="button" />

			</p:confirmDialog>
		</h:form>

	</ui:define>
</ui:composition>